/**
 * 
 */
package br.com.cnpv.modelo.dao;

import java.util.Iterator;
import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;

import br.com.cnpv.modelo.acesso.idao.ICidadeDAO;
import br.com.cnpv.modelo.entity.Cidade;

/**
 * @author rmsilva
 *
 */
public class CidadeDAO implements ICidadeDAO {

	@SuppressWarnings("unchecked")
	@Override
	public List<Cidade> listarCidades(int idEstado, Session session) throws HibernateException {
		
		Query query = session.getNamedQuery("Cidade.listarCidade");

		
		query.setInteger("estado", idEstado);
		
		return query.list();
	}

	@SuppressWarnings("rawtypes")
	public Cidade getCidade(int idCidade, Session session) throws HibernateException 
	{
		Cidade cidade = null;
		Query query = session.getNamedQuery("Cidade.getCidade");
		
		query.setInteger("cidade", idCidade);
		
		
		Iterator it = query.iterate();
		
		if(it.hasNext())
		{
			cidade = (Cidade)it.next();
		}else
		{
			cidade = null;
		}
		
		return cidade;
	}
}